package org.springblade.modules.admin.vo.contract;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springblade.modules.admin.entity.Elevator;
import org.springblade.modules.admin.entity.ElevatorDetail;
import org.springblade.modules.admin.entity.MaintainContractType;

import java.util.List;

/**
 * @author zcc
 * @version 1.0
 * @date 2022/3/1 15:08
 */
@Data
public class ContractBuildingInfoVo {

	private Long buildingId;

	private String buildingName;

	private Integer buildingType;

	private Long elevatorId;

	private Integer elevatorCounts;


	//2023-07-08 v4版本调整
	/**
	 * 月保养费用
	 */

	@ApiModelProperty(value = "设备品种")
	private String varietiesEquipment;

	@ApiModelProperty(value = "设备品种")
	private String elevatorAddress;

	@ApiModelProperty(value = "月保养费用")
	private String monthCostDesc;

	@ApiModelProperty(value = "服务次数")
	private Integer maintainCounts;


	/**
	 * 保养类型	1:清包	2:半包	3:全包	4:三包	5:小包	6:免包	7:维修
	 */
	@ApiModelProperty(value = "保养类型	1:清包	2:半包	3:全包	4:三包	5:小包	6:免包	7:维修")
	private String maintainType;
	/**
	 * 是否需要驻场0:不需要1：需要
	 */
	@ApiModelProperty(value = "是否需要驻场0:不需要1：需要")
	private Integer isLive;
	/**
	 * 年检费用
	 */
	@ApiModelProperty(value = "年检费用")
	private String yearCostDesc;
	/**
	 * 限速器年检费用
	 */
	@ApiModelProperty(value = "限速器年检费用")
	private String yearSpeedGovernorCost;

	@ApiModelProperty(value = "限速器年检费用类型1：包缴，2代缴,3自缴")
	private Integer yearSpeedGovernorCostType;

	@ApiModelProperty(value = "检费用类型1：包缴，2代缴,3:自缴")
	private Integer yearCostType;


	@ApiModelProperty(value = "清单类型")
	private Integer changeRestrictType;

	@ApiModelProperty(value = "品牌名称")
	private String brandName;

	@ApiModelProperty(value = "品牌id")
	private String brandId;

	private MaintainContractType contractTypeHistoryInfo;

	@ApiModelProperty(value = "附件地址")
	@TableField(typeHandler = JacksonTypeHandler.class)
	private List<ContractExtVo> extUrls;

	@ApiModelProperty("使用单位")
	private Long customerUnitId;

	@ApiModelProperty("使用单位")
	private String customerUnitName;

	@ApiModelProperty("移交前上次维保时间")
	private String lastDateDesc;

	@ApiModelProperty("移交前上次维保时间")
	private Boolean lastDateType;


	@ApiModelProperty("1:未完善2:已完善3:----")
	private Integer isEleOK;


	@ApiModelProperty("1:未排期2:已排期3:----")
	private Integer isPlan;

	/**
	 * 电梯用途 0-公用，1-私用
	 */
	@TableField(value = "use_type")
	private Integer useType;

	@TableField(value = "serve_counts")
	@ApiModelProperty("服务次数")
	private Integer serveCounts;

}
